using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;

namespace QldtSdh.DAL.Models.Mapping
{
	public class DonViMap : EntityTypeConfiguration<DonVi>
	{
		public DonViMap()
		{
			// Khoá chính
			this.HasKey(t => t.MaDonViGUID);

			// Các cột
			this.Property(t => t.MaDonViGUID)
				.IsRequired()
                .HasMaxLength(50);

			this.Property(t => t.MaDonVi)
				.IsRequired()
                .HasMaxLength(50);

			this.Property(t => t.TenDonVi)
				.IsRequired()
                .HasMaxLength(255);

			this.Property(t => t.TruongDonVi)
				.HasMaxLength(255);

			this.Property(t => t.SoDienThoai)
				.HasMaxLength(50);

			this.Property(t => t.GhiChu)
				.HasMaxLength(255);

			// Ánh xạ Property của POCO vào Column của Table
			this.ToTable("DonVi");
			this.Property(t => t.MaDonViGUID).HasColumnName("MaDonViGUID");
			this.Property(t => t.MaDonVi).HasColumnName("MaDonVi");
			this.Property(t => t.TenDonVi).HasColumnName("TenDonVi");
			this.Property(t => t.TruongDonVi).HasColumnName("TruongDonVi");
			this.Property(t => t.SoDienThoai).HasColumnName("SoDienThoai");
			this.Property(t => t.GhiChu).HasColumnName("GhiChu");
		}
	}
}
